<?php
defined('IN_IXDCW') or exit('Access Denied');
require DT_ROOT."/api/pay/chinapay/netpayclient_config.php";
//加载 netpayclient 组件
require DT_ROOT."/api/pay/chinapay/netpayclient.php";
//导入公钥文件
$flag = buildKey(PUB_KEY);
if(!$flag) {
	echo "导入公钥文件失败！";
	exit;
}
	//获取交易应答的各项值
$merid        = $_REQUEST["merid"];         // 商户号
$orderno      = $_REQUEST["orderno"];       // 订单号
$transdate    = $_REQUEST["transdate"];     // 订单日期
$amount       = $_REQUEST["amount"];        // 订单金额
$currencycode = $_REQUEST["currencycode"];  // 货币代码
$transtype    = $_REQUEST["transtype"];     // 交易类型
$status       = $_REQUEST["status"];        // 交易状态
$checkvalue   = $_REQUEST["checkvalue"];    // 签名值
$gateId       = $_REQUEST["GateId"];        // 网关号
$priv1        = $_REQUEST["Priv1"];         // 备注

//验证签名值，true 表示验证通过
$flag = verifyTransResponse($merid, $orderno, $amount, $currencycode, $transdate, $transtype, $status, $checkvalue);

if($flag) {
	if($status == '1001') {
		//您的处理逻辑请写在这里，如更新数据库等。
		//注意：如果您在提交时同时填写了页面返回地址和后台返回地址，且地址相同，请在这里先做一次数据库查询判断订单状态，以防止重复处理该笔订单
		if($priv1 != $charge_orderid) {
			$charge_status = 2;
			$charge_errcode = '订单号不匹配';
			$note = $charge_errcode.'S:'.$charge_orderid.'R:'.$priv1;
			log_write($note, 'rchinapay');
		} else if($amount != padstr($charge_money*100, 12)) {
			$charge_status = 2;
			$charge_errcode = '充值金额不匹配';
			$note = charge_errcode.'S:'.$charge_money.'R:'.$amount;
			log_write($note, 'rchinapay');
		} else {
			$charge_status = 1;
		}
	}
}